import { Pipe, PipeTransform } from '@angular/core';
import hljs from 'highlight.js';
import { HighlightOptions } from 'highlight.js';

@Pipe({
  name: 'highlight'
})
/**
 * 一个 Angular 管道，用于对输入的代码字符串进行语法高亮处理。
 * 该管道使用 highlight.js 库，根据指定的语言进行高亮显示。
 */
export class HighlightPipe implements PipeTransform {
  transform(value: string ,language: string = 'json'): string {
    const options: HighlightOptions = { language: language ,ignoreIllegals:true};
    return hljs.highlight(value, options).value;
  }
}
